package com.example.dao;

import com.example.entity.User;

import java.sql.SQLException;
import java.util.List;

/**
 * @author zhangs
 * @version v1.0
 * @decription 用户服务接口
 * @date 2021/4/3 15:51
 **/
public interface UserDao extends AutoCloseable {
    // 通过uid查询单条数据
    User queryById(int uid) throws SQLException;

    // 通过username查询多条数据
    List<User> queryLikeUsername(String name) throws SQLException;

    // 通过username和性别来查询
    List<User> queryLikeUsernameAndSex(String name, int sex) throws SQLException;

    // 插入单条数据
    int insertOne(User user) throws SQLException;

    // 批量插入：插入多条数据
    int[] insertMany(List<User> users) throws SQLException;

    // 更新单条数据
    int updateOne(User user) throws SQLException;

    // 批量更新：更新多条数据
    int updateMany(List<User> users) throws SQLException;

    // 删除单条数据
    int deleteOne(int uid) throws SQLException;

    // 删除多条数据
    int deleteMany(List<Integer> uids) throws SQLException;
}
